package com.example.demo.utils.wx;

import com.example.demo.utils.base.BaseData;
import lombok.Data;

/**
* zhangxy:微信入参及出参
*
* 微信订单状态
* SUCCESS—支付成功
* REFUND—转入退款
* NOTPAY—未支付
* CLOSED—已关闭
* REVOKED—已撤销（刷卡支付）
* USERPAYING--用户支付中
* PAYERROR--支付失败(其他原因，如银行返回失败)
*/
@Data
public class WxPayEntity extends BaseData {
    /** 微信支付分配的商户号 */
    private String partnerid;
    /**
     * 微信返回的支付交易会话ID
     */
    private String prepayid;
    /**
     * 扩展字段
     */
    private String packAge = "Sign=WXPay";
    /**
     * 随机字符串，不长于32位
     */
    private String nonceStr;
    /**
     * 时间戳
     */
    private String timestamp;
    /**
     * 签名
     */
    private String sign;
    /**
     * 商品描述交易字段格式根据不同的应用场景按照以下格式：
     * APP——需传入应用市场上的APP名字-实际商品名称，天天爱消除-游戏充值。
     */
    private String body = "无尽宝-商城商品";
    /**
     * 商户系统内部订单号，要求32个字符内，只能是数字、大小写字母_-|*且在同一个商户号下唯一
     */
    private String outTradeNo;
    /**
     * 商户系统内部的退款单号，商户系统内部唯一，只能是数字、大小写字母_-|*@ ，同一退款单号多次请求只退一笔。
     */
    private String outRefundNo;
    /**
     * 微信订单号
     */
    private String transactionId;
    /**
     * 订单总金额，单位为分
     */
    private double totalFee;
    /**
     * 退款金额
     */
    private double refundFee;
    /**
     * 支付类型
     * APP
     * JSAPI
     */
    private String tradeType = "APP";
    /**
     * 额外字段，用于区别订单类型
     */
    private String extData;

    /**
     * 微信调用响应code
     */
    private String return_code;
    /**
     * 微信调用响应错误信息
     */
    private String return_msg;

    /**
     * 微信支付页面地址-h5
     */
    private String mweb_url;

    /**
     * JSAPI支付时需传入openid
     */
    private String openId;
}
